perm filename EX4.SAI[SAI,BGB] blob
sn#143425 filedate 1975-02-03 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 BEGIN "EX4"
C00005 ENDMK
C⊗;
BEGIN "EX4"
REQUIRE "ABBREV[SYS,BGB]" SOURCE_FILE;
REQUIRE "GEOMES.HDR[SAI,BGB]" SOURCE_FILE;
INTEGER I,C,B0,B1,B2;
REAL X,Y,Z,U,V,W;
α SEQUENCE GENERATOR - S(X) = (137*X + 187)MOD 256 = (137*X - 69)MOD 256;
SAFE SIMPLE INTEGER PROCEDURE S(INTEGER X);
START_CODE
DEFINE P="'17";
MOVE 1,-1(P);IMULI 1,137;ADDI 1,187;
ANDI 1,'377;POP P,-1(P);POPJ P,;
END;
α INITIALIZE GEOMED & THE PROTOTYPE OBJECT;
MKUNIV;
B0 ← MKCUBE(.2,.2,0);
α PLACE 256 OBJECTS INTO THE 8 FOOT CUBE OF SPACE IMMEDIATELY IN VIEW OF THE CAMERA;
U←30.49; V←-69.2; W←-43.25;
FOR I←0 THRU 255 DO
BEGIN
B1 ← (IF I=255 THEN B0 ELSE MKCOPY(B0));
X ← (I - 128)/32;
Y ← (S(I) - 128)/32;
Z ← (S(S(I)) - 128)/32;
TRANSL(B1,X,Y,Z);
IF I=0 THEN B2←B1 ELSE BATT(B1,B2);
END;
C←SON(UNIVERSE);
C←SON(C);
C←TRAM(C);
W←12.5;SETFOC(W);ZWC(C)←W;
FOR I←1 THRU 10 DO ⊂ GEODPY;PLOTO("QW."&CVS(I));SETFOC(W←2*W);ZWC(C)←W;⊃;
FOR I←11 THRU 20 DO ⊂ GEODPY;PLOTO("QW."&CVS(I));SETFOC(W←0.5*W);ZWC(C)←W;⊃;
END "EX4";